/*
 * 当main 结束的时候，运行到return，或者调用exit(），所有线程也会随之结束
 */

#include <stdio.h>
#include <unistd.h> // sleep()
#include <pthread.h>
#include <stdlib.h> // exit()

void *run( void * arg)
{
    while(1)
    {
        printf("I am still alive ... \n");
        sleep(1);
    }
}

int main()
{
    pthread_t tid1;
    pthread_create(&tid1, NULL, run, NULL);

    sleep(2);
    printf(" The main thread ends and all threads end.\n");
    exit(0); // main thread quit

    return 0;
}

/*
 * 新线程每隔1秒打印一次，主线程在2秒后exit，新线程也随之结束
 */
